import { defineConfig } from 'vite';
import { resolve } from 'path';
import { nodeResolve } from '@rollup/plugin-node-resolve';
import cssInjectedByJsPlugin from 'vite-plugin-css-injected-by-js';
import {viteSingleFile} from "vite-plugin-singlefile";

export default defineConfig({
    plugins: [
        nodeResolve({
            exportConditions: ['development']
        }),
        cssInjectedByJsPlugin(),
        viteSingleFile({
            useRecommendedBuildConfig: true,
            removeViteModuleLoader: true,
            inlinePattern: ['**/*.js', '**/*.css'],
            deleteInlinedFiles: false,
        })
    ],
    build: {
        cssCodeSplit: false, // 禁用 CSS 代码分割
        lib: {
            entry: resolve(__dirname, 'src/index.ts'), // 组件库的入口文件
            name: 'LitEcharts',  // 全局变量名称
            fileName: (format) => `lit-echarts.${format}.js`, // 输出文件名
        },
        // lib: {
        //     entry: resolve(__dirname, './node_modules/@shoelace-style/shoelace/dist/shoelace.js'), // 组件库的入口文件
        //     name: 'Sl',  // 全局变量名称
        //     fileName: (format) => `sl.${format}.js`, // 输出文件名
        // },
        rollupOptions: {
            external: ['lit'], // 排除 lit 库，不打包进去
            output: {
                globals: {
                    lit: 'Lit', // 使用全局变量 Lit
                },
            },
        },
    },
});
